---
id: corsaccessorsettings
title: 2. 跨域配置
sidebar_label: 2. 跨域配置
---

## 2.1 关于配置

跨域配置指的是 `Furion` 框架客户端跨域配置选项。

## 2.2 配置信息

- `CorsAccessorSettings`：配置根节点
  - `PolicyName`：跨域策略名，`sting` 类型，必填，默认 `FurCorsAccessor`
  - `WithOrigins`：允许跨域的域名列表，`string[]` 类型，默认 `[ "http://localhost:4200" ]`
  - `WithHeaders`：请求表头，没有配置则允许所有表头，`string[]` 类型
  - `WithExposedHeaders`：响应标头，`string[]` 类型
  - `WithMethods`：设置跨域允许请求谓词，没有配置则允许所有，`string[]` 类型
  - `AllowCredentials`：跨域请求中的凭据，`bool` 类型
  - `SetPreflightMaxAge`：设置预检过期时间，`int` 类型

## 2.3 配置示例

```json
{
  "CorsAccessorSettings": {
    "PolicyName": "MyPolicy",
    "WithOrigins": ["http://localhost:4200", "https://furion.pro"]
  }
}
```

## 2.4 使用 `axios` 前端注意事项

由于 `axios` 对跨域有特定的需要，需要响应报文中添加特定 `Header` 才能放行，如：`Access-Control-Expose-Headers: xxxxx`，所以，如果前端使用了 `axios` 请求，需要添加以下配置：

```cs
{
  "CorsAccessorSettings": {
    "WithExposedHeaders": ["X-Pagination","access-token","x-access-token"]
  }
}
```
